package com.young.core.dao;


import com.young.core.domain.BrokerDO;

import java.util.List;

public interface BrokerDao {

    void insert(BrokerDO broker);

    /**
     * 保持节点活性，内部就是更新ip对应数据的updateTime
     * @param ip
     * @return 如果更新成功，返回true
     */
    boolean keepAlive(String ip);

    void delete(String ip);

    /**
     * 删除ttl内已过期的节点数据
     * @param ttl
     */
    int expire(int ttl);

    BrokerDO get(String ip);

    List<BrokerDO> getAll();

}
